.navbar .navbar-brand img {
	translate: 0 -3px;
}

h1, h2, h3, h4, h5, h6, legend {
  font-family: "Suisse Screen", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight:400;
}

h2 {
	border-bottom: 4px double goldenrod;
	text-shadow: #fff -1px 1px 0px;
	line-height: 28px;
	text-rendering: optimizeLegibility;
}

label {
	font-weight: 700;
}

label.form-check-label {
	font-weight: normal;
}

img.logo-main {
 	margin: 20px 0;
 }

button.help-icon {
	border: none;
	background: none;
	padding: 4px;
	color: #999;
}

button.help-icon:hover {
	color: #000;
}

td dl {
	margin-top: 0;
	margin-bottom: 0;
}

.row-list > .row {
	cursor: pointer;
}

.row-list > .row:nth-of-type(even) {
	background-color: #fafafa;
}

.plaintext-form-value {
	padding-top: calc(0.375rem + var(--bs-border-width));
	padding-bottom: calc(0.375rem + var(--bs-border-width));
	margin-bottom: 0;
	font-size: inherit;
	line-height: 1.5;
}

section.intro {
	margin-bottom: 1rem;
}

section + section {
	margin-top: 2rem;	
}

span.active-value.clean {
	display: none !important;
}

.anchor {
	font-size: 14px;
	float: left;
	margin-left: -28px;
	color: #999;
	opacity: 0;
	transition: opacity 0.2s ease-in-out 0.1s;
}

.hbox {
	display: flex;
	flex-direction: row;
}

legend {
	border-bottom: 1px solid var(--bs-border-color);
	margin-bottom: 1rem;
}

legend .anchor {
	margin-top: 0.5rem;
}

legend:hover .anchor {
	opacity: 1;
}

fieldset + fieldset > legend {
	margin-top: 2rem;
}

h2 .anchor {
	margin-top: 0.1rem;
}

h2:hover .anchor {
	opacity: 1;
}

table.counts td:last-child,
table.counts th:last-child {
	text-align: right !important;
}

/*
form > fieldset > fieldset:last-of-type {
    border-bottom: 1px dotted #aaa;
    margin-bottom: 1.5rem;
}

form fieldset fieldset fieldset {
	border-bottom: none;
	margin-bottom: 0;
	margin-top: 0;
	padding-top: 1.5rem;
}
*/

form fieldset.grouped {
	border-left: 1px dotted #aaa;
}

form fieldset.grouped fieldset.grouped {
	margin-left: 0.5rem;
}

form fieldset.grouped > .row > .col-form-label,
form fieldset.grouped fieldset.group > .row > .col-form-label {
	margin-left: 1rem;
	margin-right: -1rem;
}

form fieldset.grouped > fieldset:not(:first-child) {
    border-top: 1px dotted #aaa;
    padding-top: 1rem;
}

.cert {
	font-size: 11px;
	line-height: 13px;
}

.hidden,
.template {
	display: none !important;
}

/* slider */

.ui-slider {
    position: relative;
    text-align: left;
    margin-left: 0;
}
.ui-slider .progress {
	margin-bottom: 4px;
	--bs-progress-bar-transition: none;
}

.ui-slider .ui-slider-handle {
    cursor: pointer;
    height: 26px;
    position: absolute;
    min-width: 26px;
    z-index: 2;
    background-color: white;
    --bs-btn-hover-color: var(--bs-btn-border-color);
}

.ui-slider-horizontal .ui-slider-handle {
    margin-left: -0.75rem;
    top:-0.25rem;
    font-size: 0.75rem;
	line-height: 0.75rem;
	font-weight: 700;
}

#auto-backups {
	list-style-type: none;
}

#auto-backups li {
	margin: 10px 0;
}

#auto-backups li:first-child {
	margin-top: 0;
}

pre.pre-scrollable {
	max-height: 160px;
}

.lookup-modal .modal-body {
	height: 300px;
}

.lookup-model table {
	max-height: 220px;
	overflow-y: auto;
}

.label.suffix {
	margin-left: 1em;
}

#settings .popover {
	min-width: 240px;
}

#settings .carousel-inner {
	overflow: inherit; /* Override BS: was causing 4px margin glitch when navigating l-to-r */
}

.table.setting-components td:last-of-type {
	width: 120px;
	text-align: right;
}

#weather-lookup-modal {
	width: 700px;
	margin-left: -350px;
}

#plugins-upgrade-all {
	width: auto;
}

#plugin-preview-install-modal .progress {
	margin-top: 20px;
	margin-bottom: 5px;
}

#plugin-install-error .alert {
	margin-bottom: 0;
}

div.plugin .name {
	font-weight: bold;
}

div.plugin > div {
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.form-actions .alert {
	margin-top: 1rem;
	margin-bottom: 0;
}

.clickable {
	cursor: pointer;
}

.menu-list > * {
	cursor: pointer;
}

.menu-list .row + .row {
	border-top: 1px solid var(--bs-border-color);
}

.menu-list h4 {
	margin: 4px 0;
	font-weight: 600;
}

.menu-list .checkmark {
	margin: 8px;
	display: none;
	line-height: 100%;
}

.menu-list .selected h4,
.menu-list .selected .checkmark {
	color: #0e90d2;
}

.menu-list .selected .checkmark {
	display: inline-block;
}

.noselect {
  -webkit-touch-callout: none;
    -webkit-user-select: none;
     -khtml-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}

.datum-activity dl.datum-props dt,
.datum-activity dl.datum-props dd {
	display: inline;
}

.datum-activity dl.datum-props dd {
	margin-left: 0.5rem;
}

.datum-activity dl.datum-props dd + dt:before {
	content: ', ';
	font-weight: normal;
	margin-left: 0;
}

.datum-activity-seenprops dd {
	margin-bottom: 0;
}

@-webkit-keyframes yellow-fade {   
   0% {background: #fef0a3;}
   100% {background: none;}
}

@keyframes yellow-fade {
   0% {background: #fef0a3;}
   100% {background: none;}
}

.brief-showcase {
   -webkit-animation: yellow-fade 2s ease-in 1;
   animation: yellow-fade 2s ease-in 1;
}

div.plugin {
	border-top: 1px solid #ccc;
}

div.plugin:first-child {
	border-top: none !important;
}

div.plugin:nth-child(even) {
	background-color: #fafafa;
}

div.plugin > div {
	min-height: 0 !important;
}

/* charting styling */

.chart-card {
	float: left;
	margin-top: 2rem;
	margin-right: 2rem;
	margin-bottom: 2rem;
}

.chart .axis {
	shape-rendering: crispedges;
}

.chart .tick text {
	font-size: 10px;
}

.chart .line {
	fill: none;
	stroke: #2982cd;
	stroke-width: 1px;
}

.chart path.domain {
	fill: none;
	stroke: #000;
	stroke-width: 1px;
}

/* carousel */

.carousel-indicators li {
	background-color: #777;
	border: none;
	margin: 10px;
	cursor: pointer;
	min-width: 10px;
	width: auto !important;
}

.carousel-indicators li + li {
	margin: 10px;
}

.carousel-indicators .active {
	background-color: #d6ad15;
	border: none;
}

.carousel .form-actions.top {
	padding-top: 17px;
	padding-bottom: 18px;
	padding-left: 20px;
}

.carousel-indicators.numbered > li {
	font-size: 10px;
	line-height: 10px;
	padding: 4px;
	text-align: center;
	margin: 10px 8px;
	text-indent: 0;
	color: white;
}

/* popover content line-height is reset :-( */
.carousel .popover-content {
	line-height: 20px;
}

/* ping test */

.ping .caption {
	font-size: 11px;
	color: #ccc;
	margin: 4px 0;
	font-weight: normal;
}

.ping .fail {
	color: #c00;
	background-color: inherit;
}

.action-bar button + button {
	margin-left: 1em;
}

#opmodes-active td:last-of-type {
	text-align: right;
}

.alert button.copy {
	color: #000;
	opacity: 0.5;
}

.alert button.copy:hover {
  opacity: 0.75;
}

button.close + button.copy {
	margin-right: 1rem;
}

.input-group input + button.copy,
.input-group textarea + button.copy {
	--bs-btn-hover-bg: inherit;
	--bs-btn-hover-color: inherit;
	border-left-style: none;
	border-color: var(--bs-border-color);
}

.cmd {
	font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
	font-size: 12px;
	white-space: pre-wrap;
}

@-webkit-keyframes yellow-fade-gray {   
   0% {background: #fef0a3;}
   100% {background: #f5f5f5;}
}

@keyframes yellow-fade-gray {
   0% {background: #fef0a3;}
   100% {background: #f5f5f5;}
}

.brief-showcase-gray {
   -webkit-animation: yellow-fade-gray 2s ease-in 1;
   animation: yellow-fade-gray 2s ease-in 1;
}

.text-right > button + button {
	margin-left: 0.5rem;
}

input[readonly].form-control {
	color: #666;
}

/** A visual rule between setting component rows. */
.row.setting-components > .row:not(:last-child):after {
	content: '';
	display: inline-block;
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	border: 0.5px solid rgb(224, 224, 224);
	transform: translateY(0.5rem);
	pointer-events: none;
}

/*
.row.setting-components span.badge {
	transform: translateY(-0.15rem);
}
*/

.content-absolute {
	position: absolute;
	top: 3.5rem;
	left: 0;
	right: 0;
	bottom: 0;
}

.content-vertical-center {
	display: flex;
	min-height: 100%;
	align-items: center;
	padding: 1rem 0;
	transform: translateY(-1.75rem);
}

.carousel .page-indicators button {
	--bs-btn-padding-y: .25rem;
	--bs-btn-padding-x: .5rem;
	--bs-btn-font-size: .75rem;
}


.sn-loc-lookup-modal .table.search-results tbody tr {
	cursor: pointer;	
}